'''
    运算符:
        算术运算符
            + - * / : 加减乘除
            % : 取模,拿除法后的余数
            //: 取整除,拿除法之后商的整数部分
            **: 幂, 次方
        赋值运算符
            =
        复合赋值运算符
            += -= *= /= : 加等于 减等于 乘等于 除等于
            %= : 取模等于
            //=: 取整除等于
            **=: 幂等于

            a+=8 等价于 a = a+8
            a%=8 等价于 a = a%8
            ...

        比较运算符
            ==
            !=
            >
            <
            >=
            <=

        逻辑运算符
            and : 与
            or  : 或
            not : 非

        位运算（暂时不学 讲算法的时候讲）

        成员运算符
            in关键字
            not in关键字
        身份运算符
            is关键字
            is not关键字

        运算符优先级
            查阅PPT的表

    表达式:
        变量 或 常量 加 运算符会组成表达式.
        表达式一般都会有返回值! (赋值表达式不考虑返回值)
'''

'''
    算术运算符: 一般只考虑数值类型参与运算,返回值一般也是数字
'''
# print(9 % 2) # 1
# print(9 // 2) # 4
# print(9 ** 2) # 81

'''
    赋值运算符: 所有数据类型都可以参与,不考虑返回值
'''
# x = 1
# y = True
# z = []

'''
    复合赋值运算符: 一般只考虑数值类型参与运算,不考虑返回值
    += -= *= /= : 加等于 减等于 乘等于 除等于
    %= : 取模等于
    //=: 取整除等于
    **=: 幂等于
'''
# x = 3
# y = 2
# x += 6 # x = x + 6
# x **= 2# x = x**2
# x %= y # x = x % y
# print(x)

'''
    比较运算符: 返回布尔值
            ==: 所有数据类型都可以参与
            !=: 所有数据类型都可以参与
            > : 一般只考虑数值类型参与运算
            < : 一般只考虑数值类型参与运算
            >=: 一般只考虑数值类型参与运算
            <=: 一般只考虑数值类型参与运算
'''
# print(None == None)
# print(1 == 2)
# print( 3 != 2)

'''
    逻辑运算符: 一般只考虑布尔值参与运算 返回布尔值
        and : 只有两边的数据都是Ture才返回True,只要有一个False就是Flase
        or : 只有两边的数据都是False才返回False,只要有一个Ture就是Ture
        not: 取反
'''
# print(True and True)
# print(False or False)
# print(not False)


'''
    成员运算符  
         字符串,in关键字: 返回对应字符或字符串 是不是 在另外一个字符串中(如果在返回Ture 如果不在返回False)
         列表, in关键字: 返回对应元素是不是在指定的列表中(如果在返回Ture 如果不在返回False)
         元组, in关键字: 返回对应元素是不是在指定的元祖中(如果在返回Ture 如果不在返回False)
         字典, in关键字: 返回对应的key是不是在指定的字典中(如果在返回Ture 如果不在返回False)
    
    身份运算符
        is  : 暂时可以认为它等同于 == 
        is not : 暂时可以认为它等同于 != 
'''
# x = {
#     "name":"damu"
# }
# print("name" not in x)
#
# print(None is not None)

'''
    运算符优先级
'''
x = 9
x = x + 6
print(x)